package com.baibei.order.list;

import com.baibei.basic.IPresenter;
import com.baibei.basic.IPresenterView;
import com.baibei.model.BalanceInfo;
import com.baibei.model.OrderInfo;

import java.util.List;

/**
 * 订单列表合约
 * Created by shenminjie on 2017/8/10.
 * mail:shenminjie@100bei.com
 */

public class IndexOrderContract {

    /**
     * view
     */
    interface IndexOrderView extends IPresenterView {

        /**
         * 关闭下拉刷新
         */
        void onRefreshCompeted();

        /**
         * 显示订单列表
         *
         * @param infos infos
         */
        void onLoadOrderList(List<OrderInfo> infos);


        /**
         * 加载失败
         */
        void onLoadFailed(String msg);


        /**
         * 更新我的收益-----订单差价合计
         *
         * @param infos
         */
        void updateMyIncome(List<OrderInfo> infos);

        /**
         * 加载中
         */
        void showLoading();

        /**
         * dismiss
         */
        void hideLoading();

        /**
         * 加载余额失败
         *
         * @param msg msg
         */
        void onLoadBalanceFailed(String msg);

        /**
         * 加载余额信息
         * balanceInfo
         *
         * @param balanceInfo balanceInfo
         */
        void onLoadBalanceInfo(BalanceInfo balanceInfo);

        /**
         * 退订超时
         */
        void onUnsubscribeTimeout();


        /**
         * 退订成功
         *
         * @param msg msg
         */
        void onUnsubscribeSuccess(String msg);

    }

    interface Presenter extends IPresenter {

        /**
         * 订单退订操作
         *
         * @param orderId orderId
         */
        void unsubscribeOrder(String orderId, String area);


        /**
         * 注册行情
         */
        void registerQuotation();

        /**
         * 反注册行情
         */
        void unregisterQuotation();
    }
}
